<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
	<head>
		<meta http-equiv="content-type" content="text/html; charset=utf-8" />
		<meta name="generator" content="JsDoc Toolkit" />
		
		<title>JsDoc Reference - links.Timeline.Step</title>

		<style type="text/css">
			/* default.css */
body
{
	font: 12px "Lucida Grande", Tahoma, Arial, Helvetica, sans-serif;
	width: 800px;
}

.header
{
	clear: both;
	background-color: #ccc;
	padding: 8px;
}

h1
{
	font-size: 150%;
	font-weight: bold;
	padding: 0;
	margin: 1em 0 0 .3em;
}

hr
{
	border: none 0;
	border-top: 1px solid #7F8FB1;
	height: 1px;
}

pre.code
{
	display: block;
	padding: 8px;
	border: 1px dashed #ccc;
}

#index
{
	margin-top: 24px;
	float: left;
	width: 160px;
	position: absolute;
	left: 8px;
	background-color: #F3F3F3;
	padding: 8px;
}

#content
{
	margin-left: 190px;
	width: 600px;
}

.classList
{
	list-style-type: none;
	padding: 0;
	margin: 0 0 0 8px;
	font-family: arial, sans-serif;
	font-size: 1em;
	overflow: auto;
}

.classList li
{
	padding: 0;
	margin: 0 0 8px 0;
}

.summaryTable { width: 100%; }

h1.classTitle
{
	font-size:170%;
	line-height:130%;
}

h2 { font-size: 110%; }
caption, div.sectionTitle
{
	background-color: #7F8FB1;
	color: #fff;
	font-size:130%;
	text-align: left;
	padding: 2px 6px 2px 6px;
	border: 1px #7F8FB1 solid;
}

div.sectionTitle { margin-bottom: 8px; }
.summaryTable thead { display: none; }

.summaryTable td
{
	vertical-align: top;
	padding: 4px;
	border-bottom: 1px #7F8FB1 solid;
	border-right: 1px #7F8FB1 solid;
}

/*col#summaryAttributes {}*/
.summaryTable td.attributes
{
	border-left: 1px #7F8FB1 solid;
	width: 140px;
	text-align: right;
}

td.attributes, .fixedFont
{
	line-height: 15px;
	color: #002EBE;
	font-family: "Courier New",Courier,monospace;
	font-size: 13px;
}

.summaryTable td.nameDescription
{
	text-align: left;
	font-size: 13px;
	line-height: 15px;
}

.summaryTable td.nameDescription, .description
{
	line-height: 15px;
	padding: 4px;
	padding-left: 4px;
}

.summaryTable { margin-bottom: 8px; }

ul.inheritsList
{
	list-style: square;
	margin-left: 20px;
	padding-left: 0;
}

.detailList {
	margin-left: 20px; 
	line-height: 15px;
}
.detailList dt { margin-left: 20px; }

.detailList .heading
{
	font-weight: bold;
	padding-bottom: 6px;
	margin-left: 0;
}

.light, td.attributes, .light a:link, .light a:visited
{
	color: #777;
	font-style: italic;
}

.fineprint
{
	text-align: right;
	font-size: 10px;
}
		</style>
	</head>

	<body>
<!-- ============================== header ================================= -->	
		<!-- begin static/header.html -->
		<div id="header">
</div>
		<!-- end static/header.html -->

<!-- ============================== classes index ============================ -->
		<div id="index">
			<!-- begin publish.classesIndex -->
			<div align="center"><a href="../index.html">Class Index</a>
| <a href="../files.html">File Index</a></div>
<hr />
<h2>Classes</h2>
<ul class="classList">
	
	<li><i><a href="../symbols/_global_.html">_global_</a></i></li>
	
	<li><a href="../symbols/links.Timeline.html">links.Timeline</a></li>
	
	<li><a href="../symbols/links.Timeline.Step.html">links.Timeline.Step</a></li>
	
</ul>
<hr />
			<!-- end publish.classesIndex -->
		</div>
		
		<div id="content">
<!-- ============================== class title ============================ -->
			<h1 class="classTitle">
				
				Class links.Timeline.Step
			</h1>

<!-- ============================== class summary ========================== -->			
			<p class="description">
				
				
			
				Step
The class step is an iterator for dates. You provide a start date and an end
date. The class itself determines the best scale (step size) based on the  
provided start Date, end Date, and bestStepNum. For example if you want to have 
a label each 100px (you may reckon with the text size), and the width of 
your timeline is 1000px, then you can provide bestStepNum=10. 
Alternatively, you can set a scale by hand.
After creation, you can initialize the class by executing begin(). Then you
can iterate from the start date to the end date via next(). You can check if
the end date is reached with the function end(). After each step, you can 
retrieve the current date via get().
The class step has scales ranging from milliseconds, seconds, minutes, hours, 
days, to years.
				
				
					<br /><i>Defined in: </i> <a href="../symbols/src/timeline.js.html">timeline.js</a>.
				
			</p>

<!-- ============================== constructor summary ==================== -->			
			
			<table class="summaryTable" cellspacing="0" summary="A summary of the constructor documented in the class links.Timeline.Step.">
				<caption>Class Summary</caption>
				<thead>
					<tr>
						<th scope="col">Constructor Attributes</th>
						<th scope="col">Constructor Name and Description</th>
					</tr>
				</thead>
				<tbody>
					<tr>
						<td class="attributes">&nbsp;</td>
						<td class="nameDescription" >
							<div class="fixedFont">
								<b><a href="../symbols/links.Timeline.Step.html#constructor">links.Timeline.Step</a></b>(start, end, bestStepNum)
							</div>
							<div class="description"></div>
						</td>
					</tr>
				</tbody>
			</table>
			

<!-- ============================== properties summary ===================== -->
			

<!-- ============================== methods summary ======================== -->
			
				
				
				<table class="summaryTable" cellspacing="0" summary="A summary of the methods documented in the class links.Timeline.Step.">
					<caption>Method Summary</caption>
					<thead>
						<tr>
							<th scope="col">Method Attributes</th>
							<th scope="col">Method Name and Description</th>
						</tr>
					</thead>
					<tbody>
					
						<tr>
							<td class="attributes">&nbsp;</td>
							<td class="nameDescription">
								<div class="fixedFont"><b><a href="../symbols/links.Timeline.Step.html#addZeros">addZeros</a></b>(value, len)
								</div>
								<div class="description">Add</div>
							</td>
						</tr>
					
						<tr>
							<td class="attributes">&nbsp;</td>
							<td class="nameDescription">
								<div class="fixedFont"><b><a href="../symbols/links.Timeline.Step.html#begin">begin</a></b>()
								</div>
								<div class="description">Set the step iterator to the start date.</div>
							</td>
						</tr>
					
						<tr>
							<td class="attributes">&nbsp;</td>
							<td class="nameDescription">
								<div class="fixedFont"><b><a href="../symbols/links.Timeline.Step.html#doAutoScale">doAutoScale</a></b>()
								</div>
								<div class="description">Automatically determine the best scale and step, based on the 
start Date and end Date</div>
							</td>
						</tr>
					
						<tr>
							<td class="attributes">&nbsp;</td>
							<td class="nameDescription">
								<div class="fixedFont"><b><a href="../symbols/links.Timeline.Step.html#end">end</a></b>()
								</div>
								<div class="description">Check if the end date is reached</div>
							</td>
						</tr>
					
						<tr>
							<td class="attributes">&nbsp;</td>
							<td class="nameDescription">
								<div class="fixedFont"><b><a href="../symbols/links.Timeline.Step.html#getDate">getDate</a></b>()
								</div>
								<div class="description">Get the current datetime</div>
							</td>
						</tr>
					
						<tr>
							<td class="attributes">&nbsp;</td>
							<td class="nameDescription">
								<div class="fixedFont"><b><a href="../symbols/links.Timeline.Step.html#getLabelMajor">getLabelMajor</a></b>()
								</div>
								<div class="description">Returns formatted text for the major axislabel, depending on the current
date and the scale.</div>
							</td>
						</tr>
					
						<tr>
							<td class="attributes">&nbsp;</td>
							<td class="nameDescription">
								<div class="fixedFont"><b><a href="../symbols/links.Timeline.Step.html#getLabelMinor">getLabelMinor</a></b>()
								</div>
								<div class="description">Returns formatted text for the minor axislabel, depending on the current
date and the scale.</div>
							</td>
						</tr>
					
						<tr>
							<td class="attributes">&nbsp;</td>
							<td class="nameDescription">
								<div class="fixedFont"><b><a href="../symbols/links.Timeline.Step.html#isMajor">isMajor</a></b>()
								</div>
								<div class="description">Check if the current step is a major step (for example when the step
is DAY, a major step is each first day of the MONTH)</div>
							</td>
						</tr>
					
						<tr>
							<td class="attributes">&nbsp;</td>
							<td class="nameDescription">
								<div class="fixedFont"><b><a href="../symbols/links.Timeline.Step.html#next">next</a></b>()
								</div>
								<div class="description">Do the next step</div>
							</td>
						</tr>
					
						<tr>
							<td class="attributes">&nbsp;</td>
							<td class="nameDescription">
								<div class="fixedFont"><b><a href="../symbols/links.Timeline.Step.html#roundToMinor">roundToMinor</a></b>()
								</div>
								<div class="description">Round the current date to the first minor date value
This must be executed once when the current date is set to start Date</div>
							</td>
						</tr>
					
						<tr>
							<td class="attributes">&nbsp;</td>
							<td class="nameDescription">
								<div class="fixedFont"><b><a href="../symbols/links.Timeline.Step.html#setAutoScale">setAutoScale</a></b>(enable)
								</div>
								<div class="description">Enable or disable autoscaling</div>
							</td>
						</tr>
					
						<tr>
							<td class="attributes">&nbsp;</td>
							<td class="nameDescription">
								<div class="fixedFont"><b><a href="../symbols/links.Timeline.Step.html#setRange">setRange</a></b>(start, end, bestStepNum)
								</div>
								<div class="description">Set a new range
The scale is determined based on the difference in time and the bestStepNum.</div>
							</td>
						</tr>
					
						<tr>
							<td class="attributes">&nbsp;</td>
							<td class="nameDescription">
								<div class="fixedFont"><b><a href="../symbols/links.Timeline.Step.html#setScale">setScale</a></b>(newScale, newStep)
								</div>
								<div class="description">Set a custom scale.</div>
							</td>
						</tr>
					
						<tr>
							<td class="attributes">&nbsp;</td>
							<td class="nameDescription">
								<div class="fixedFont"><b><a href="../symbols/links.Timeline.Step.html#snap">snap</a></b>(date)
								</div>
								<div class="description">Snap a date to a rounded value.</div>
							</td>
						</tr>
					
					</tbody>
				</table>
				
				
				
			
<!-- ============================== events summary ======================== -->
			

<!-- ============================== constructor details ==================== -->		
			
			<div class="details"><a name="constructor"> </a>
				<div class="sectionTitle">
					Class Detail
				</div>
				
				<div class="fixedFont">
						<b>links.Timeline.Step</b>(start, end, bestStepNum)
				</div>
				
				<div class="description">
					
					
				</div>
				
				
				
				
					
						<dl class="detailList">
						<dt class="heading">Parameters:</dt>
						
							<dt>
								<span class="light fixedFont">{Date}</span>  <b>start</b>
								
							</dt>
								<dd>The start date, for example new Date(2010,09,21)
                           or new Date(2010,09,21,23,45,00)</dd>
						
							<dt>
								<span class="light fixedFont">{Date}</span>  <b>end</b>
								
							</dt>
								<dd>The end date</dd>
						
							<dt>
								<span class="light fixedFont">{int}</span>  <b>bestStepNum</b>
								
							</dt>
								<dd>Optional. The most ideal number of steps, labels.</dd>
						
						</dl>
					
					
					
					
					
					
					

			</div>
			

<!-- ============================== field details ========================== -->		
			

<!-- ============================== method details ========================= -->		
			
				<div class="sectionTitle">
					Method Detail
				</div>
				
					<a name="addZeros"> </a>
					<div class="fixedFont">
					
					
					<b>addZeros</b>(value, len)
					
					</div>
					<div class="description">
						Add
						
						
					</div>
					
					
					
						
							<dl class="detailList">
							<dt class="heading">Parameters:</dt>
							
								<dt>
									<b>value</b>
									
								</dt>
								<dd></dd>
							
								<dt>
									<b>len</b>
									
								</dt>
								<dd></dd>
							
							</dl>
						
						
						
						
						
						
						

					<hr />
				
					<a name="begin"> </a>
					<div class="fixedFont">
					
					
					<b>begin</b>()
					
					</div>
					<div class="description">
						Set the step iterator to the start date.
						
						
					</div>
					
					
					
						
						
						
						
						
						
						

					<hr />
				
					<a name="doAutoScale"> </a>
					<div class="fixedFont">
					
					
					<b>doAutoScale</b>()
					
					</div>
					<div class="description">
						Automatically determine the best scale and step, based on the 
start Date and end Date
						
						
					</div>
					
					
					
						
						
						
						
						
						
						

					<hr />
				
					<a name="end"> </a>
					<div class="fixedFont">
					
					<span class="light">{boolean}</span>
					<b>end</b>()
					
					</div>
					<div class="description">
						Check if the end date is reached
						
						
					</div>
					
					
					
						
						
						
						
						
							<dl class="detailList">
							<dt class="heading">Returns:</dt>
							
								<dd><span class="light fixedFont">{boolean}</span> true if the current date has passed the end date</dd>
							
							</dl>
						
						
						

					<hr />
				
					<a name="getDate"> </a>
					<div class="fixedFont">
					
					<span class="light">{Date}</span>
					<b>getDate</b>()
					
					</div>
					<div class="description">
						Get the current datetime
						
						
					</div>
					
					
					
						
						
						
						
						
							<dl class="detailList">
							<dt class="heading">Returns:</dt>
							
								<dd><span class="light fixedFont">{Date}</span> current The current date</dd>
							
							</dl>
						
						
						

					<hr />
				
					<a name="getLabelMajor"> </a>
					<div class="fixedFont">
					
					<span class="light">{string}</span>
					<b>getLabelMajor</b>()
					
					</div>
					<div class="description">
						Returns formatted text for the major axislabel, depending on the current
date and the scale. For example when scale is MINUTE, the major scale is
hours, and the hour will be formatted as "hh".
						
						
					</div>
					
					
					
						
						
						
						
						
							<dl class="detailList">
							<dt class="heading">Returns:</dt>
							
								<dd><span class="light fixedFont">{string}</span> major axislabel</dd>
							
							</dl>
						
						
						

					<hr />
				
					<a name="getLabelMinor"> </a>
					<div class="fixedFont">
					
					<span class="light">{string}</span>
					<b>getLabelMinor</b>()
					
					</div>
					<div class="description">
						Returns formatted text for the minor axislabel, depending on the current
date and the scale. For example when scale is MINUTE, the current time is 
formatted as "hh::mm".
						
						
					</div>
					
					
					
						
						
						
						
						
							<dl class="detailList">
							<dt class="heading">Returns:</dt>
							
								<dd><span class="light fixedFont">{string}</span> minor axislabel</dd>
							
							</dl>
						
						
						

					<hr />
				
					<a name="isMajor"> </a>
					<div class="fixedFont">
					
					
					<b>isMajor</b>()
					
					</div>
					<div class="description">
						Check if the current step is a major step (for example when the step
is DAY, a major step is each first day of the MONTH)
						
						
					</div>
					
					
					
						
						
						
						
						
							<dl class="detailList">
							<dt class="heading">Returns:</dt>
							
								<dd>true if current date is major, else false.</dd>
							
							</dl>
						
						
						

					<hr />
				
					<a name="next"> </a>
					<div class="fixedFont">
					
					
					<b>next</b>()
					
					</div>
					<div class="description">
						Do the next step
						
						
					</div>
					
					
					
						
						
						
						
						
						
						

					<hr />
				
					<a name="roundToMinor"> </a>
					<div class="fixedFont">
					
					
					<b>roundToMinor</b>()
					
					</div>
					<div class="description">
						Round the current date to the first minor date value
This must be executed once when the current date is set to start Date
						
						
					</div>
					
					
					
						
						
						
						
						
						
						

					<hr />
				
					<a name="setAutoScale"> </a>
					<div class="fixedFont">
					
					
					<b>setAutoScale</b>(enable)
					
					</div>
					<div class="description">
						Enable or disable autoscaling
						
						
					</div>
					
					
					
						
							<dl class="detailList">
							<dt class="heading">Parameters:</dt>
							
								<dt>
									<span class="light fixedFont">{boolean}</span> <b>enable</b>
									
								</dt>
								<dd>If true or not defined, autoscaling is enabled. 
                         If false, autoscaling is disabled.</dd>
							
							</dl>
						
						
						
						
						
						
						

					<hr />
				
					<a name="setRange"> </a>
					<div class="fixedFont">
					
					
					<b>setRange</b>(start, end, bestStepNum)
					
					</div>
					<div class="description">
						Set a new range
The scale is determined based on the difference in time and the bestStepNum.
For example if you want to have a label each 100px (you may reckon with the
text size), and the width of your timeline is 1000px, then you can provide 
bestStepNum=10. 
Alternatively, you can set a scale by hand.
						
						
					</div>
					
					
					
						
							<dl class="detailList">
							<dt class="heading">Parameters:</dt>
							
								<dt>
									<span class="light fixedFont">{Date}</span> <b>start</b>
									
								</dt>
								<dd>The start date and time.</dd>
							
								<dt>
									<span class="light fixedFont">{Date}</span> <b>end</b>
									
								</dt>
								<dd>The end date and time.</dd>
							
								<dt>
									<span class="light fixedFont">{int}</span> <b>bestStepNum</b>
									
								</dt>
								<dd>Optional. The most ideal number of steps, labels.</dd>
							
							</dl>
						
						
						
						
						
						
						

					<hr />
				
					<a name="setScale"> </a>
					<div class="fixedFont">
					
					
					<b>setScale</b>(newScale, newStep)
					
					</div>
					<div class="description">
						Set a custom scale. Autoscaling will be disabled.
For example setScale(SCALE.MINUTES, 5) will result
in minor steps of 5 minutes, and major steps of an hour.
						
						
					</div>
					
					
					
						
							<dl class="detailList">
							<dt class="heading">Parameters:</dt>
							
								<dt>
									<span class="light fixedFont">{Step.SCALE}</span> <b>newScale</b>
									
								</dt>
								<dd>A scale. Choose from SCALE.MILLISECOND,
                              SCALE.SECOND, SCALE.MINUTE, SCALE.HOUR,
                              SCALE.DAY, SCALE.MONTH, SCALE.YEAR.</dd>
							
								<dt>
									<span class="light fixedFont">{int}</span> <b>newStep</b>
									
								</dt>
								<dd>A step size, by default 1. Choose for
                              example 1, 2, 5, or 10.</dd>
							
							</dl>
						
						
						
						
						
						
						

					<hr />
				
					<a name="snap"> </a>
					<div class="fixedFont">
					
					
					<b>snap</b>(date)
					
					</div>
					<div class="description">
						Snap a date to a rounded value. The snap intervals are dependent on the 
current scale and step.
						
						
					</div>
					
					
					
						
							<dl class="detailList">
							<dt class="heading">Parameters:</dt>
							
								<dt>
									<span class="light fixedFont">{Date}</span> <b>date</b>
									
								</dt>
								<dd>the date to be snapped</dd>
							
							</dl>
						
						
						
						
						
						
						

					
				
			
			
<!-- ============================== event details ========================= -->		
			
			
			<hr />
		</div>

		
<!-- ============================== footer ================================= -->
		<div class="fineprint" style="clear:both">
			
			Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on Wed Oct 13 2010 15:20:31 GMT+0200 (CEST)
		</div>
	</body>
</html>
